fix(aiokafka): keep Faust assignor for changelog tables and update admin request compatibility#676
Conversation
…min request compatibility Ensure worker consumers use the Faust assignor whenever changelog tables are present, even with zero standby replicas, so table recovery mapping remains correct. Also update metadata/create-topics request construction for newer aiokafka APIs.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #676 +/- ##
==========================================
- Coverage 94.09% 94.05% -0.04%
==========================================
Files 102 102
Lines 11108 11109 +1
Branches 1198 1198
==========================================
- Hits 10452 10449 -3
- Misses 557 559 +2
- Partials 99 101 +2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
@dada-engineer @patkivikram that one test "pypy3.9" fails during installation. Since python3.9 is EOL since end of last year. Could we remove support for python3.9 ? |
I think so yes. Ideally we make sure it is python 3.14 tested then |
Just had a look, python3.14 does not work out-of-the-box. So a separate PR would be a better option then adding it here. |
Makes sense. |
|
seems a like a maintainer has to remove python3.9 from the required checks. |
Description
Ensure worker consumers use the Faust assignor whenever changelog tables are present, even with zero standby replicas, so table recovery mapping remains correct. Also update metadata/create-topics request construction for newer aiokafka APIs.
Also removed support for python3.9 and below.
Problems
If
self.app.conf.table_standby_replicas = 0theRoundRobinPartitionAssignoris used even is the app containschangelog_topics, which leads to a situation wherechangelog_topicsare not consumed at the start of the app.With newer version of aiokafka, some older api-version where deprecated.